In a data storage system including hard disk drives (HDDs) in multiple types, an increased load on a back end causes a congestion on a data propagation path, adversely effecting the time until a command is completed (command completion time).
In a data storage system, a reference time referred to as a timeout time is generally set. When a command is issued to a HDD and the time waiting for a response to that command exceeds the timeout time, it is determined that an error occurs in that HDD.
In a conventional data storage system, a single timeout time is set for all HDDs provided in the system (refer to Patent Reference 1: Japanese Laid-open Patent Publication No. 2004-139482, for example).
However, in such a conventional data storage system, when there are HDDs in multiple types, the common timeout time set for all HDDs provided in the system is determined based on HDDs having the lowest response capability. Further, the timeout time is set based on the maximum load on the propagation path which varies dynamically during an operation of the data storage system.
Accordingly, the timeout time set to a greater value lengthens the error detection time during the operation of the system operation.
In contrast, if a timeout time would be set to a smaller value, upon a delay of a command completion time, it cannot be determined whether the delay is due to the higher load on the propagation path or due to a failure in an HDD, which would hinder the data storage system from being operated efficiently.